# Makefile

CXX := g++ # 使用 g++ 编译器，可以根据实际情况更改
CXXFLAGS := -std=c++14 -Wall -pthread # 添加 -pthread 标志

SRC_DIR := src
SRCS := $(wildcard $(SRC_DIR)/*.cpp) # 匹配所有main函数的源文件

# 生成可执行文件的目标
TARGETS := $(patsubst $(SRC_DIR)/%.cpp,bin/%,$(SRCS)) # 放在bin目录下

# 默认目标，编译所有的main函数
all: create_bin $(TARGETS)

# 创建bin目录
create_bin:
	mkdir -p bin

# 生成可执行文件的规则
bin/%: $(SRC_DIR)/%.cpp
	$(CXX) $(CXXFLAGS) -o $@ $^

# 清理规则
clean:
	rm -f $(TARGETS)

.PHONY: all create_bin clean
